Personal digital assistance and virtual reality

ABSTRACT

A virtual reality network provides access to a number of virtual reality representations, each virtual reality representation representing a location in a virtual universe and defined by VR data stored on the network. The VR data can be in a simplified data format and include data from an intelligent personal assistant and knowledge navigator (IPAKN). The IPAKN receives queries about a VR representation of a location and generate a new VR data set based on information downloaded from web sources about the location. A database server that provides access to the VR data is updated with the new VR data set.

CROSS REFERENCE TO RELATED APPLICATIONS

This patent application is a continuation and claims the priority benefit of U.S. patent application Ser. No. 14/147,429 filed Jan. 3, 2014, which claims the priority benefit of U.S. provisional application 61/786,572 filed Mar. 15, 2013 entitled, “Personal Digital Assistance and Virtual Reality,” the disclosures of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION 1. Field of the Invention

The present invention relates generally to computer-generated virtual reality representations of locations. Specifically, the present invention relates to storing, organizing, and providing access to a number of virtual reality representations via a computer network that obtains input from an intelligent personal assistant and knowledge navigator as well as uses the intelligent personal assistant and knowledge navigator to interface with the visitor.

2. Description of the Related Art

Virtual reality (VR) models and simulates views from a location in virtual space. The visitor perceives the view from virtual space on a computer monitor or specialized display, and experiences “movement” by changing position or orientation within the virtual space. The visitor may even be “teleported” to different points in the virtual space.

Although recognized as having substantial potential, virtual reality has remained limited mainly to computer games and expensive training simulations. As explained below, virtual reality representations model a single virtual space, and authoring virtual reality representations requires specialized computer programming or graphics skills. These factors have hindered broader adoption of virtual reality. Also, data inputted into the VR systems is limited to users who obtain data and make the effort to load that data into a VR universe, thus slowing progress of the “depth of knowledge” of the VR Universe.

A virtual reality representation models a single volume, area, or point within virtual space. The representation may model physical space, such as a location or region on the Earth, or may model imaginary space in a video game. The visitor can move around in the virtual space, but is limited to remaining in that virtual space.

Two human authors may create virtual reality representations of the same location, or of related locations. These representations may exist on different websites, servers, or computers. There is no comprehensive way of organizing or searching these representations and offering them to the visitor so that they may be logically viewed together.

Intelligent personal assistants and knowledge navigator (IPAKN) are applications that use a natural language user interface to answer questions, make recommendations, and perform actions by delegating requests to a set of Web services. Software such as SIRI, from Apple Inc., demonstrates that the software adapts to the user's individual preferences over time and personalizes results, and performing tasks such as finding recommendations for nearby restaurants, or getting directions. Intelligent personal assistants and knowledge navigator (IPAKN) when asked questions can also create virtual reality representations of the same location, or of related locations by being available when a visitor enters into a VR space and when asked questions can be used to answer questions. The answers to these questions can be later used as reference from the next visitor without the need for directly interacting with the IPAKN.

In particular, it would be desirable that the human authors and the IPAKN representations be connected together in a way that enables the visitor to experience both representations. For example, if the locations modeled the same physical location, the visitor could choose which representation to experience. If the locations modeled adjacent physical locations, the visitor could experience moving from one virtual location to another. This creates a “virtual universe” made of separate virtual reality representations that can be toured by visitors. The data available to the human author can be greatly enhanced by interacting with and saving data from the IPAKN. Also, the visitors experience can be greatly enhanced by having an IPAKN available for interacting.

Even if representations generated by different authors (one being a IPAKN) can be logically connected together in a virtual universe, there remains an additional need to simplify authoring of virtual reality representations. The programming and graphic skills required by conventional VR software makes creation of virtual reality representations a relatively complex and expensive process. The easier and faster virtual reality representations can be created, the easier and faster a rich and varied virtual universe can be created and offered to visitors.

Thus there is a need for logically connecting virtual reality representations together to form a virtual universe. In addition to conventional virtual reality software, a simplified method of creating virtual reality presentations is needed to encourage creation of the virtual universe.

There is further a need to broaden the knowledge available (beyond the human author) of the spaces in a VR Universe.

SUMMARY OF THE CLAIMED INVENTION

The claimed invention is a network capable of connecting virtual reality representations together to form a virtual universe. The virtual reality representations can be in a simplified virtual reality format that requires no special computer programming or graphics skills to create.

A network in accordance with the present invention includes a number of virtual reality representations, each virtual reality representation representing a location in a virtual universe and defined by VR data stored on the network at a network address.

A database stores the network address and the location in the universe of each virtual reality representation. A database server provides access to the database. The database server generates a list of locations in response to a location query from a visitor, and provides the network address of the virtual reality representation of a selected location.

The visitor connects to the network using a client host adapted to communicate with the domain server. The host receives data representing the network address of the VR data server associated with a selected VR representation. The host is also adapted to communicate with the VR data server to access the VR data set defining the VR representation.

In using the network, the visitor is preferably presented with a map displaying locations in the virtual universe. Each location is associated with a virtual reality representation accessible through the network. The visitor selects a location on the map he or she desires to visit. The domain server receives the selected location and retrieves from the database the network location of the data server providing access to the selected virtual reality representation. The domain server transmits the network address of the data server to the host, and the host communicates with the data server to receive the VR data defining the virtual reality representation. The domain server also sends the location to a IPAKN server that collects information available in a formatted way back through the network along with the selected virtual reality representation.

In one possible embodiment, the client host includes a monitor that displays both the map and the virtual reality presentation generated from the VR data as well as the data from the IPAKN server. In other possible embodiments the virtual reality presentation can utilize specialized hardware separate from the map display.

In preferred embodiments of the present invention, the network stores data representing paths in the virtual universe. A path is defined by at least two different locations in the universe. When the domain server receives a message from the host requesting virtual movement from a first location to a second location, the domain server communicates the network address of the data server associated with the second location to the host. The host then communicates with that data server and transitions from the first VR presentation to the VR presentation of the second location. The visitor perceives a substantially continuous movement along the path from the first location to the second location without leaving the virtual universe.

Paths can be defined in different ways in alternative embodiments of the network. The domain server can store predefined path definitions by storing a list of the locations defining the path. Alternatively, the domain server stores a data record for each location in the universe. The data set records the adjacent locations in the universe to define a path from each location to adjacent locations. In other alternative embodiments the path is defined in response to system events and then made available to the visitor.

The network preferably includes administrative software that enables new virtual reality representations to be added to the network. The virtual reality representations can be stored on existing data servers on the network, or stored on data servers that are themselves added to the network. The database is updated to reflect the new locations in the virtual universe and the network addresses of the data servers accessing the representations. The administrative software also enables new data to be available from the IPAKN to add to the virtual reality representations. This can take the form of loading that data directly to the VR database or it can provide a link directly to the IPAKN pre-loaded with information about the virtual reality location selected.

In one advantageous embodiment of the present invention, the virtual universe is divided into public and private regions. Any author can add to the network a virtual reality representation of a location in the public region of the universe. Only authorized authors can add representations in private regions of the universe.

In another advantageous embodiment of the present invention, the network is operated as a self-regulating virtual reality universe. The network preferably provides visitor access to a number of virtual reality representations, each authored by a different author. The domain server receives ratings from visitors to the quality of the virtual reality representations they visited, and assesses the quality of each virtual reality representation based on the ratings provided by the visitors. The network also provides visitor access to a number of virtual reality representations, authored by an IPAKN author. The domain server receives ratings from visitors to the quality of the virtual reality representations of the IPAKN they used, and assesses the quality of each virtual reality representation based on the ratings provided by the visitors.

Action is then taken regarding a virtual reality based on the assessed quality of the virtual reality representation. The quality can be rated as a running average of visitor ratings. If the rating falls below a predetermined score, visitor access to the representation can be removed or the representation can be removed from the network. Preferably the action is taken automatically and without human intervention so that the network is self-regulating.

To simplify creation of virtual reality representations, the VR data can be stored in a simplified file format that stores digital photographs taken from a specific geographic location. An author takes a number of photographs from the location with a digital camera. The photographs are preferably in JPG format but other “digital film” formats can be used. Each photograph preferably is taken in a different viewing direction, preferably viewing north, south, east, and west. The images are uploaded to the network along with geographical data (for example, latitude and longitude) that identifies where the photographs were taken. The human author also interacts with the IPAKN systems provided, asking it questions and then decides which of the response of data, images or other files should be stored along with the specific geographic location. In this way the knowledge of the data of the specific location is expanded.

The domain server stores the images and any data from the IPAKN accepted by the author as well as stores the viewing direction associated with each image, and geographical data in a single data file on a data server. The domain server updates its database, associating the geographical location with a virtual location in the virtual universe. The virtual representation is now accessible to visitors, and the photographs and images and IPAKN data are displayed when generating the virtual reality presentation of the virtual location.

A virtual reality network in accordance with the present invention offers many advantages. A number of different virtual reality representations are made available to visitors through a single, centrally accessible domain server. The knowledge of the VR universe is greatly enhanced by use of the IPAKN. The domain server enables visitors to experience virtual reality representations created by different authors as well as data from a knowledgeable IPAKN, and to tour a virtual universe created by logically organizing and connecting the separate representations.

Authors can easily add new virtual reality representations and new IPAKN response to the network, enabling visitors to experience a virtual reality universe that grows richer and richer with time. With the simplified VR file format, users may share with others their travels to places around the world, or may easily create their own virtual universe for business or private use.

Other objects and features of the present invention will become apparent as the description proceeds, especially when taken in conjunction with the accompanying eight drawing sheets illustrating an embodiment of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic view of a virtual reality universe realized as a distributed location network in accordance with the present invention;

FIG. 2 is a schematic view of a virtual reality representation record used in the network shown in FIG. 1;

FIG. 3 is a schematic view of a virtual reality record used in the network shown in FIG. 1;

FIG. 4 is a sequence diagram illustrating a visitor utilizing a client host communicating with the network shown in FIG. 1 to view a location in the virtual universe;

FIG. 5 is a view of the client host display displaying a map of the universe and a virtual reality presentation of a location in the virtual universe;

FIG. 6 is a sequence diagram similar to FIG. 4 illustrating a visitor moving along a path in the virtual universe;

FIGS. 7a and 7b represent paths in the virtual universe extending between adjacent locations in the universe;

FIGS. 8-10 illustrate other paths in the virtual universe; and

FIG. 11 represents photographs that define a simplified virtual reality representation of a physical location modeled in the virtual universe.

DETAILED DESCRIPTION

Embodiments of the present invention are a system and method for enabling a user and/or visitor utilizing a computer or other client device to visit a selected location within a virtual reality universe using virtual reality data authored by different authors where the datasets include data from a IPAKN or other web source specifically queried by the independent authors. The system and method provide a plurality of data servers and a domain server interconnected with the data servers. The data servers provide access to sets of VR data of virtual representations of locations within the universe, each set of VR data is authored by a respective different author independently of the other authors. The VR data includes data from an IPAKN or other web source specifically queried by the independent authors. The domain server provides access to domain data for selecting the location to visit and the network address of the data server providing access to the VR data for the selected location. The data is received from the visitor representing a selected location in the universe. The domain data is accessed in response data received from the visitor and obtains therefrom the network address of the data server that provides access to the VR data for the selected location. The VR data for the selected location is transferred from the data server to the visitor's computer or other client device for generation of a VR presentation of the selected location without leaving the virtual universe.

Users or visitors may use any number of different electronic computing client devices, which can include, but is not limited to, general purpose computers, mobile phones, smartphones, personal digital assistants (PDAs), portable computing devices (e.g., laptop, netbook, tablets), desktop computing devices, handheld computing device, or any other type of computing device capable of communicating over a communication network. Such devices are preferably configured to access data from other storage media, such as, but not limited to memory cards or disk drives as may be appropriate in the case of downloaded services. Such devices preferably include standard hardware computing components such as, but not limited to network and media interfaces, non-transitory computer-readable storage (memory), and processors for executing instructions that may be stored in memory.

FIG. 1 illustrates a distributed location network 10 in accordance with the present invention.

The network 10 enables a visitor to visit and explore a virtual universe. FIG. 1 illustrates a map 12 of the virtual universe displayed on a visitor's computer monitor by a software program or virtual reality browser (VR browser) 14 running on a visitor's computer 16 connected as a network client. The universe can model a real or tangible space, such as the surface of the Earth, with the universe representing real or tangible locations in physical space. Alternatively, the universe can model an imaginary space, such as L. Frank Baum's Oz or a stick model of a protein molecule, with the universe representing imaginary locations in nonphysical space.

The network 10 is preferably a local, proprietary network (e.g., an intranet) and/or is alternatively a part of a larger wide-area network (e.g., the cloud). The network 10 can be a local area network (LAN), which is communicatively coupled to a wide area network (WAN) such as the Internet. The Internet is a broad network of interconnected computers and servers allowing for the transmission and exchange of Internet Protocol (IP) data between users connected through a network service provider. Examples of network service providers are the public switched telephone network, a cable service provider, a provider of digital subscriber line (DSL) services, or a satellite service provide.

The visitor explores the universe by selecting and viewing virtual reality presentations of virtual locations or points 18 on the map 12. Each point 18 represents a location in the universe that has at least one virtual reality representation available for a visitor to access and experience. A point 18 can model a point, area or volume in the virtual universe, and a visitor may be capable of moving about the area or volume if the virtual reality presentation enables it.

The VR browser 14 retrieves the data for the virtual reality representations from virtual reality data servers (VR data servers) 20. VR data servers 20 are connected to the browser 14 by network connections 22. The network connections 22 may be through a Local Area Network (LAN) or a global network such as the Internet. VR data servers 20 may include any type of server or other computing device as is known in the art, including standard hardware computing components such as network and media interfaces, non-transitory computer-readable storage (memory), and processors for executing instructions or accessing information that may be stored in memory. The functionalities of multiple servers may be integrated into a single server. Any of the aforementioned servers (or an integrated server) may take on certain client-side, cache, or proxy server characteristics. These characteristics may depend on the particular network placement of the server or certain configurations of the server.

Each VR data server 20 provides access to VR data 24 for a virtual reality representation of the selected point 18. Data can be stored in conventional virtual reality file formats such as QUICKTIME, X3D, VRML, and the like, or can be stored as separate digital image files. VR data 24 can be stored on the VR data server 20 or stored on additional network data servers (not shown) distributed through the network 10.

The entire network 10, including the network client 16 and the servers 20 and 26, may also be hosted on a single computer if a distributed network is not required.

A point 18 may have a number of different virtual reality representations served by a number of different VR data servers 20. These representations may be stored in different file formats, may represent the point in different seasons of the year or in different historical eras, or may provide an alternative or augmented visitor interface or sensory experience. Of course, a particular data server 20 could serve a number of virtual reality representations of a point 18 or different points 18.

A domain server 26 hosts a universe database 30 for displaying the map 12 and the points 18 on the map 12. The database 30 preferably includes graphic files, image files, and other data for generating and displaying the map 12. The universe database 30 may also include the network addresses or network paths to the VR files associated with the virtual reality representations.

The domain server 26 also maintains a network database 32 that stores information about each point 18 and the network addresses of the one or more VR data servers 20 that provide access to VR representations of the point 18.

A domain server 20 may be modified hosts access to the IPAKN that is stored in the cloud.

The network database 32 holds a number of virtual reality representation records (VRR records) 34.

FIG. 2 illustrates a typical VRR record 34. The VRR record 34 is a data structure that provides information enabling the VR browser 14 to locate the VR data server 20 providing access to a specific VR representation. A VRR record 34 includes the location of the point 18 and the network address of the VR data server 20 associated with the VR representation of the point 18.

The VRR record 34 preferably also includes metadata providing additional information about the point 18, the associated VR data server 20, and the virtual reality representation of the point 18. Metadata can include the author, VR file format, or a description of the VR representation. Other metadata can include digital rights management (DRM) information, initial orientation or direction of the default opening view of the virtual reality representation, or the like. Metadata can include saved IPAKN data from the interaction between the human author and the response of the human authors questions from the IPAKN.

Each VR data server 20 maintains a local database 36 that records the location or locations of the VR data 24 accessed through the VR data server 20 (see FIG. 1). The local database 36 holds a virtual reality record (VR record) 38 for each representation accessed through the VR data server 20.

The structure of FIG. 2 may be modified to include saved IPAKN data and for example could be location data of a link to IPAKN data (such as voice response from the IPAKN answering the question “tell me something about the City of New York” location, such as any text that comes back from the answering the question “search the internet on the empire state building” or and video data, such as an video that comes back on “show me a video of the lobby of the empire state building”).

It is contemplated that other data that can be saved from the IPAKN data, for example, “background” voice data is saved from the question asked “tell me about what the empire state building is made of”, or “history data” saved from the question “when was the empire state building built” and/or “author defined data” such as answers from the question “how many people work in the empire state building”. In this way, a series of logical and personal information for each virtual reality location is saved.

FIG. 3 illustrates a typical VR record 38. The VR record 38 is a data structure that includes the location of the point 18, the location of the VR data 24 for the representation of the point, and metadata containing further information about the VR data 24. For example, such metadata may include the author and digital rights management (DRM) information, VR data format, or descriptive information about the VR representation.

The universe database 30, the network database 32, or a local database 36 can be realized as a single-file relational database, object database, or hierarchal XML database. Alternatively, a database 30, 32, 36 can be realized as a number of separate data files, wherein each data record is stored in a respective data file. The data file can be in structured text file format, XML format, or other conventional data format. The selection of database schema and format is based on conventional software engineering considerations, including the network architecture, the network load, and available software.

Each VR record also has saved IPAKN data which is either the data itself or a link to that data.

FIG. 4 illustrates a first visitor session wherein a visitor 39 explores the virtual universe point-by-point. For clarity only one visitor is shown connected to the network 10, but it should be understood that a number of visitors can simultaneously explore the universe.

The VR browser 14 retrieves the map data 30 from the domain server 26 and begins the visitor session by displaying the map 12 shown in FIG. 1. The map 12 displays the points 18, and the visitor interface of the VR browser 14 enables the visitor 39 to select which point 18 and the representation of the selected point 18 he or she would like to experience.

It should be understood that the universe database 30 may include or enable generation of a number of different maps representing different regions or sub-regions of the universe. The VR browser 14 may simultaneously or sequentially display different maps during a visitor session. For example, the visitor is initially presented with a “master map” or model of the entire universe. If the virtual universe is sufficiently extensive, the visitor interface of the VR browser 14 enables visitors to “drill down” and select more detailed maps or models of sub-regions (for example, maps representing a continent, a country, a city, and then a city block) to select a desired point 18.

Map 12 should therefore be understood to represent all possible maps the VR browser 14 may display as part of its visitor interface. Maps may be representations of one-dimensional, two-dimensional, three-dimensional, or n-dimensional space as is appropriate for the virtual universe such maps represent.

The map 12 may also display additional information that assists the visitor in selecting a point or a VR representation of the point. For example, the map might indicate points of historical interest or the number and types of virtual reality representations available for each point.

In the illustrated embodiment, the visitor selects a desired point 18 a from the map 12 by clicking the mouse (see FIG. 1). The browser 14 determines the location of the selected point 18 a on the map and requests a list 40 of VRR records 34 associated with that point from the domain server 26 (see FIG. 2).

The domain server 26 queries the network database 32 for the list of VRR records of points at or proximate to the selected point 18 a. The domain server 26 returns the VRR list 40 to the VR browser 14. The VR browser 14 generates a list of available VR representations from the VRR list 40, and displays the list for the selected point 18 a.

The display list can include information from the metadata to assist the visitor in selecting a VR representation to experience. For example, the VR browser 14 might display an icon for each representation indicating some characteristic of the representation (such as season of the year, its VR file format, or quality moderation value (discussed in further detail below)). Also, the VR browser 14 might display whether IPAKN data for location (voice, text, video) or other data (background, history, author defined) is available.

The visitor selects from the display list the desired virtual reality representation to experience. If there is only one representation associated with the selected point, the steps of displaying and selecting from the list can be eliminated.

The VR browser 14 uses the VRR record 34 associated with the selected representation to look up the network address of the VR data server 20 providing access to the virtual representation. The VR browser 14 requests the VR record 38 for the selected representation from the VR data server 20. The VR browser 14 uses the returned VR record 38 to fetch the VR data file 24 and initialize a virtual reality presentation that will be perceived and experienced by the visitor 39. For example, the VR browser 14 could start one helper application to display a QUICKTIME presentation and another helper application to display a VRML presentation.

In the illustrated embodiment, the VR browser 14 displays the map 12 in a first window and the virtual reality presentation in a second window (discussed in greater detail later). In other embodiments, virtual reality presentations could be displayed independently of the VR browser 14 through more specialized or augmented VR hardware, such as a headset.

During the VR presentation, the VR browser 14 receives input from the visitor and communicates with the VR data server 20 to fetch the VR data 36. The visitor can change the point of view and move about the presentation as permitted by the virtual reality representation being experienced. When the visitor ends the VR presentation, the window displaying the VR presentation closes or goes blank. The visitor 39 can then select a new point 18 or quit the application.

In addition to exploring selected points 18, the network 10 enables the visitor 39 to explore paths through the universe. See, for example, path 42 shown in FIG. 5. A path is defined as extending along a set of points or extending between start and end points in the universe. The network 10 supports multiple types of paths as will be described in further detail below.

A visitor sequentially experiences virtual reality presentations of the points 18 on the path. The VR browser 14 automatically moves from displaying one VR presentation to the next in response to visitor input indicating movement along the path. This provides the visitor with the perception of walking through or being “immersed” in the universe. If the points 18 are sufficiently close together, the visitor will essentially perceive continuous or seamless movement through the virtual universe.

Path 42 represents a pre-defined path. A pre-defined path is defined prior to the visitor session and may, for example, represent a virtual river, highway, or historical trail through the universe. Pre-defined paths are preferably defined in the universe database 30 and represented on the map 12 for selection by the visitor 39.

FIG. 5 illustrates the VR browser 14 with a first display window 46 and a second display window 50. Display window 46 displays the map 12, the path 42, and the points 18 along the path 42 as shown. The second window 50 displays the virtual reality presentation of the active, or currently visited, point 18 b.

When displaying a virtual reality presentation of a point 18, the VR browser 14 preferably displays an icon 48 indicating the active point 18. Also, icon 48A and 48B shows the IPAKN data is available. The illustrated icon 48 is an arrow that also indicates the approximate direction of the current line of view of the virtual reality presentation shown in the second window 50. Icon 48 is shown indicating that point 18 b is the active point and that the direction of the current line of view is west.

Navigation widgets 52 associated with the first window 46 enable the visitor to move along the path 42 or to move to a different path (such as a second path 54). Navigation widgets 56 associated with the second window 50 enable the visitor to change the line of view of the VR presentation in the second window 50. Widgets 52 and 56 can be combined into a single control if desired, and alternative known interface controls (including the mouse) or other interface widgets may replace or be used with the widgets 52, 56. Also, in more modem interfaces, a mouse control can be used to select the regions.

Second window 50 may have data added by the author from the IPAKN, for instance a road may be added and an advertisement sign added. In this way more knowledge than the authors images are available in the VR experience.

Also, a widget may be included which is a link to sub widget. When the visitor selects the sub-widget, they can initialize any of the data, for instance any of the previously stored IPAKN data for location (voice, text, video) or other data (background, history, author defined) is available.

It is contemplated that a widget may be included, which when activated, sends geo location data selected in second window 50 is sent directly to an online IPAKN cloud through the structure of FIG. 1, providing for efficient real time interaction with the IPAKN. In this way, the IPAKN automatically returns whatever basic querry is sent to the IPAKN. Not limited to, but for example, the selection of a widget could be a voice response by the system 10 of FIG. 1. That says “tell me what you know of” and then geolocation is inserted. In this way, the IPAKN automatically answers the question so that the visitor does not need to know how to use the IPAKN or even know how to access the IPAKN. In this way, one widget may have many sub-widgets to further query the IPAKN directly.

FIG. 6 illustrates a second visitor session in which the visitor moves along and explores the path 42 (the database 36 and VR data 24 are omitted from the drawing). The VR browser 14 retrieves the map and path data from the universe database 30 and displays the map 12 as shown in FIG. 5.

The visitor selects the desired path 42, and the VR browser 14 obtains the VRR record list 40 for the points 18 on the path 42 from the domain server 26. For simplicity, it is assumed that each point 18 on the path 42 has only one virtual reality representation; so each VRR record 34 is associated with a single point 18 on the path 42.

The VR browser 14 uses the VRR record 34 associated with the path's starting point 18 c to look up the network address of the appropriate VR data server 20 and retrieves the VR record 38 from that server 20. The VR record data is used to initialize and display the virtual reality presentation of the first, or starting point 18 c (see FIG. 5). Widgets 56 control the line of view of the virtual reality presentation as described.

Widgets 52 move the visitor to the next, or second point on the path 42. The VR browser 14 uses the VRR record 34 associated with the next point to retrieve VR data for the next point. If the points 18 along the path 42 are sufficiently close, the transition from point to point appears to the visitor as a continuous movement along the path.

In moving from the virtual reality representation of one point to another, the VR browser 14 may also maintain (as closely as possible) the same line of view to maintain the appearance of continuous movement. For example, if the visitor is looking south and moves to the next point, the initial line of view for the next point is also viewing south. In alternative embodiments, however, the VR browser 14 can initialize each virtual reality presentation with a pre-determined or default line of view.

A second type of path preferably supported by the network 10 is a connection path. A connection path is a dynamic path generated from an active point 18 to adjacent points 18 during the visitor session.

FIG. 7a illustrates the map 12 displaying connection paths 58 extending between an active point 18 d and adjacent points 18 e-18 i. Connection paths 58 connect two adjacent or neighboring points 18, enabling the visitor to pick and choose his or her own route through the universe.

The connection paths 58 typically provide multiple routes between points. For example, the visitor can move from point 18 d to point 18 h directly, or can move first to point 18 g and then to point 18 h. FIG. 7b illustrates the connection paths 59 when the visitor reaches point 18 h. The paths 59 start from point 18 h and end at points 18 d, 18 g, and 18 i.

The VRR record(s) 34 for each point 18 preferably includes a connection data set (see FIG. 2) that lists adjacent points 18. For example, the connection data set for point 18 d (shown in FIG. 7a ) includes points 18 e-18 i and the direction to each point. This enables the VR browser 14 to display the connection paths 58 available to the visitor; the VR browser 14 can also iteratively retrieve the VRR records of adjacent points to display a network of available paths on the map 12. The connection data set also allows the VR browser 14 to efficiently respond and display the next virtual reality presentation after receiving a visitor request to move in a given direction from active point 18 d.

The domain server 26 generates the connection data set when a new point 18 is added to the network. The adjacent points 18 are retrieved from the universe database 30 to generate the connection data set for the new point 18.

The domain server 26 also modifies the connection data set of adjacent points 18 as illustrated in FIGS. 8 and 9. The maps 12 in FIGS. 8 and 9 are otherwise identical to the map 12 in FIG. 7a , but include a later-added point 18 j or 18 k, respectively. In FIG. 8, point 18 j is inserted between points 18 d and 18 h. Point 18 j is now adjacent to point 18 d instead of point 18 h. The connection data set associated with point 18 d is modified to remove point 18 h and to insert point 18 j for the connection path 58 extending between points 18 d and 18 j. In FIG. 9, point 18 k is an additional point adjacent to point 18 d. Point 18 k is added to the data connection set associated with point 18 d for the connection path 58 extending between points 18 d and 18 k.

A visitor can also preferably edit the connection data set for a point 18 to add or subtract connection paths extending from the point. The visitor can add a remote point 18 to the data set, creating a connection path to that remote point. A point can be removed from the data set, eliminating a connection path. The modified data set can be stored on the visitor's machine 16 for use only by the visitor's browser 14, or the modifications can be saved in the network database 32 to be made available to all visitors.

A third type of path supported by the network 10 is the event path. An event path is a dynamic path generated by the network in response to an event or visitor query. For example, the visitor 39 may request the path from his or her current location to another location in the universe. The VR browser 14 queries the universe database 30 and displays the points 18 along the path on the map 12.

FIG. 10 illustrates an event path 60 generated by an event. The domain server 26 maintains a list of active visitors on the network 10 and the current location of each visitor in the universe. The map 12 displays the positions of all the visitors 39 and the path to each visitor. For clarity only two active visitors 39 a, 39 b and one path 60 between them are shown in FIG. 10. Paths 60 are automatically updated as visitors move about in the universe and as visitors join and leave the network.

A fourth type of path supported by the network is the visitor-defined path. Path 54 (see FIG. 5) represents a visitor-defined path. The visitor defines the end points and the points 18 of the path 54. The path can be created, for example, by inputting a list of the points 18 defining the path or by having the VR browser 14 maintain and store a history of the points 18 visited by the visitor in prior visits.

The definition of the visitor-defined path 54 may be stored on the visitor's machine 16 for use only by the visitor 39. Alternatively, the path definition is stored in the universe database 30 and made available to all network visitors.

As described above, the domain server 26 provides a single point of access for the VR browser 14 to initiate a visitor session and display a map of available points 18 in the universe. This enables new points 18 to be added to the universe and new virtual reality representations of new or existing points 18 to be made available to all VR browsers 14 on the network 10 by updating the domain server databases 30 and 32.

An author creating a virtual reality representation for a new or existing point 18 stores the data on his or her own VR data server 20 and then connects the VR data server to the network 10. The author remotely invokes an administrative program on the domain server 26 that adds the location to the universe database 30 and adds a new VRR record 34 to the network database 32. The new VRR record 34 includes the location of the new point 18 and the network address of the associated VR data server 20. The VR browser 14 automatically generates an up-to-date map 12 when it retrieves the map data from the universe database 30.

If desired, the client machine 16 can cache VR data 34 as well as records from the databases 30, 32, and 36 for improved performance. The VR browser 14 uses the local data cache to display the map and to retrieve VR data from the network 10. However, the data cache should be refreshed regularly or at the visitor's command to prevent stale data. Alternatively, the database records can include a “Time to Live” field for automatic updating of the data caches.

To facilitate creation of VR representations of points 18, the universe is preferably divided into a public region and a private region. Authors are free to add virtual reality representations of any point in the public region. Only authorized authors can add virtual representations of private regions.

To illustrate the concept of public and private regions in more concrete terms, the map 12 is a virtual representation of the Gettysburg National Military Park 62 and the adjacent borough of Gettysburg, Pa. 64. See FIG. 1; the borough of Gettysburg is represented schematically as a circular area. The Military Park 62 is a public region of the universe and the borough of Gettysburg 64 is a private region of the universe.

Tourists or Civil War buffs can author a virtual reality representation for a new point 18 in the Military Park 62 or author an additional virtual reality representation for an existing point 18. The author can provide visitor access to the representation through a publicly or privately available VR data server 20. The author updates the domain server databases 30, 32 through the administrative software as previously described and updates the local database 36 and stores the VR data 24 on the data server 20. The new point and its representation are now available to all visitors.

Over time, the number of points in the universe having virtual reality representations increases and the number of representations for a given point increases. This enables visitors to select points and view presentations that provide them with a rich and varied virtual visit to the virtual Military Park 62.

To further encourage the creation and selection of high-quality virtual presentations, each representation of a public point 18 is preferably assigned a quality moderation value. A quality moderation value represents the quality of the representation and assists visitors in selecting which representations to view. The quality moderation value is preferably stored in the representation's VRR record 34 (see FIG. 2) and is displayed on the map 12.

For example, a representation can be assigned a quality moderation value between 0 and 10, where 0 represents a low quality representation and 10 represents a high quality representation. A visitor can rate the quality of the representation after experiencing the virtual reality presentation. A running average of visitors' ratings is stored as the representation's quality moderation value. This mechanism enables the network 10 to be self-moderating in that representations whose quality falls below a minimum value can be automatically removed from the network or not listed for selection.

Virtual reality representations of points within Gettysburg borough 64, however, are limited to authorized authors. Examples of such authors may include owners of commercial establishments who wish to control the content of the virtual reality representation of their store or business. A private representation may be hosted on a VR data server 20 whose access is controlled by the author and may or may not be assigned a quality moderation value.

Virtual reality representations of public points are preferably created in a simple, standardized format to encourage those without technical or computer expertise to contribute virtual reality representations to the network 10.

FIG. 11 illustrates a preferred, simplified virtual reality format. Four images 66N, 66S, 66E and 66W are taken with a digital camera from a point, each photograph having a line of view facing north, south, east, and west, respectively. The administrative program uploads the four image files and presents an on-line form requesting the location of the point and associated metadata. The administrative program stores the image files as VR data 24 on a VR data server 20, updates the universe database 30, adds the appropriate VRR record to the network database 32, and adds the appropriate VR record to the local database 36.

Because the illustrated public region 62 represents an area of the Earth, the latitude and longitude of the corresponding physical location of an actual point on the Earth's surface provides a convenient way of identifying the location of a point 18 on the map 12. The administrative program requests the latitude and longitude of the point, which can be obtained, for example, by a GPS reading when the digital photographs are taken.

It is understood that other kinds of metadata, data fields, data keys, or data formats can be used for or stored in the databases 30, 32, and 36 and that other VR data 24 can be stored in other file formats. The data can be distributed on other servers on the network 10. But the VR browser 14 preferably accesses the network 10 initially through the single domain server 26 regardless of how the data itself is distributed throughout the network 10.

FIG. 11 also shows IPAKN data for location (voice, text, video) is available. For instance, 66N shows an image that was downloaded from the results of the IPAKN query “show me a picture of Gettysburg borough”, which shows more detail of what the web has stored on that location. Also shown are more detailed data 66S that was downloaded from the results of the IPAKN query “show me a picture of the monument on at the Gettysburg borough. Further detail can be shown 66E that was downloaded from the results of the IPAKN query “show me how many soldiers died in the war at the Gettysburg borough. In this way specific data was saved from the IPAKN.

FIG. 11 may be adapted to also show IPAKN data for location for other data (background, history, author defined) that is available. For instance, information may be displayed that shows what was downloaded from the results of the query “show me a picture of a sunny day at the Gettysburg borough.” In this way, specific authored data is saved that was queried from the IPAKN. It is contemplated that embodiments of the virtual reality network will be customized for particular industries or visitors. For example, a real estate network would host virtual reality representations of houses available for sale. The seller's real estate agent takes photographs of each room in a house and uploads them to the real estate network, along with the floor plan and other metadata. A buyer's real estate agent selects the house to visit, and the VR browser displays the floor plan and the paths through the house. The visitor moves along the paths in the house, in effect taking a virtual reality tour through each room in the house.

The present invention may be implemented in an application that may be operable using a variety of devices. Non-transitory computer-readable storage media refer to any medium or media that participate in providing instructions to a central processing unit (CPU) for execution. Such media can take many forms, including, but not limited to, non-volatile and volatile media such as optical or magnetic disks and dynamic memory, respectively. Common forms of non-transitory computer-readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, any other magnetic medium, a CD-ROM disk, digital video disk (DVD), any other optical medium, RAM, PROM, EPROM, a FLASHEPROM, and any other memory chip or cartridge.

Various forms of transmission media may be involved in carrying one or more sequences of one or more instructions to a CPU for execution. A bus carries the data to system RAM, from which a CPU retrieves and executes the instructions. The instructions received by system RAM can optionally be stored on a fixed disk either before or after execution by a CPU. Various forms of storage may likewise be implemented as well as the necessary network interfaces and network topologies to implement the same.

While we have illustrated and described preferred embodiments of our invention, it is understood that this is capable of modification, and we therefore do not wish to be limited to the precise details set forth, but desire to avail ourselves of such changes and alterations as fall within the purview of the following claims. 

What is claimed is:
 1. A system for accessing virtual reality (VR) representations, the system comprising: non-transitory memory that stores a plurality of VR data sets each defining a VR representation of a real-world location; one or more VR data servers, wherein each VR data set is associated with any one of the one or more VR data servers; a personal assistant server that: receives user provided queries about a VR representation of a location, wherein the user provided queries request that new information about the location be downloaded, retrieves query results including the downloaded new information responsive to the user provided queries from specifically queried web sources, generates a new VR data set based on the downloaded new information about the location, the new VR data set defining a new VR representation of the location; and updates the VR data servers with the new VR data set by incorporating the user provided queries and the retrieved query results, wherein the user provided queries and the retrieved query results are formatted to be compatible with the new VR data set; a domain server that transmits a network address of one of the VR data servers associated with the new VR data set that includes the user provided queries and the retrieved query results based on the location being selected by a user in a virtual universe; and a client host that communicates with the domain server to: receive the network address of the VR data server associated with the new VR data set identified for the selected location, retrieve the query results associated with the new VR data set from the corresponding VR data server at the network address, and generate the new VR representation within the virtual universe, the generated new VR representation inclusive of the retrieved query results associated with the new VR data set without the user leaving the virtual universe.
 2. The system of claim 1, wherein the domain server, the one or more VR data servers, and the client host comprise a plurality of computers and wherein at least one domain server connects to one or more web sources hosted by a cloud server.
 3. The system of claim 1, wherein each of the one or more VR data servers stores a database of locations of the virtual reality representations accessible through the VR data server and network addresses of the VR data sets defining such virtual reality representations, whereby the new information associated with the query results downloaded from web sources can be stored remotely from the VR data server.
 4. The system of claim 1, wherein the VR data sets comprise one VR data set in a first file format and a second VR data set in a second file format different from the first file format, wherein at least one data set is stored from a download of an interaction with a cloud based web source.
 5. The system of claim 1, wherein at least one of the VR data sets comprise first data representing a plurality of photographs taken from a geographical location, each photograph taken in a respective viewing direction, and second data representing the viewing direction of each photograph and where at least one image or dataset is stored from a download of an interaction with a cloud based web source.
 6. The system of claim 1, wherein the client host generates a virtual reality presentation utilizing the new information associated with the query results downloaded from web sources.
 7. The system of claim 1, wherein the domain server is adapted to communicate with a plurality of client hosts whereby a plurality of client hosts can simultaneously visit the virtual universe, wherein at least one domain server connects to a cloud-based web source.
 8. The system of claim 1, wherein domain data in the domain server is updated based on author submission of information regarding the network address of the VR data server and the location in the virtual universe associated with the new information associated with the query results downloaded from web sources.
 9. The system of claim 1, wherein at least one of the VR data sets comprise data representing a photograph taken from a geographical location, and wherein at least one data source was stored from a download of an interaction with a cloud based web source.
 10. The system of claim 1, wherein at least one query is made using natural language, and further comprising an intelligent digital assistant application that automatically downloads the retrieved query result from the web sources and provides the at least one query and the corresponding retrieved query result to be stored in the non-transitory memory for future reference with respect to the VR representation.
 11. A method for accessing virtual reality (VR) representations, the method comprising: storing a plurality of VR data sets in one or more VR data servers, each VR data set defining a VR representation of a real-world location; receiving user provided queries about a VR representation of a location, wherein the user provided queries request that new information about the location be downloaded, retrieving query results including the downloaded new information responsive to the user provided queries from specifically queried web sources, generating a new VR data set based on the downloaded new information about the location, the new VR data set defining a new VR representation of the location; updating the VR data servers with the new VR data set by incorporating the user provided queries and the retrieved query results, wherein the user provided queries and the retrieved query results are formatted to be compatible with the new VR data set; receiving a selection from a visitor device selecting the location; accessing domain data in response to the received selection to obtain a network address of one of the VR data servers that stores the new VR data set corresponding to the selected location and that includes the user provided queries and the retrieved query results; and transmitting the new VR data set including the user provided queries and the retrieved query results from the VR data server at the network address to the visitor device, wherein the visitor device generates the new VR representation within a virtual universe, the generated new VR representation inclusive of the retrieved query results associated with the new VR data set without a user leaving the virtual universe.
 12. The method of claim 11, wherein transmitting the new VR data set comprises: transmitting the network address of the VR data server to the visitor device; and directing a request to transmit the VR data set from the visitor device to the VR data server associated with the VR data set whereby the VR data server communicates with the visitor device to transmit the information associated with the query responses.
 13. The method of claim 11, wherein receiving the selection from the visitor device selecting the location comprises: transmitting a list of real-world locations to the visitor device for display of the list; and receiving data from the visitor device representing the selected real-world location from the list.
 14. The method of claim 13, wherein the list represents a path in the virtual universe.
 15. A virtual reality (VR) viewing system for viewing virtual locations, the viewing system comprising: non-transitory memory that stores: a plurality of VR data sets, each VR data set representing a real-world location in a virtual universe; and data representing a map of the real-world locations in the virtual universe represented by the plurality of VR data sets; a display that displays an image of a map from the map data; an interface that communicates over a communication network to: receive a selection from a visitor device selecting a real-world location displayed on the map, the real-world location represented by a corresponding one of the plurality of VR data sets; and receive data representing a network address of a VR data server that stores the corresponding VR data set; a personal assistant server that: receives user provided queries about a VR representation of the location, wherein the user provided queries request that new information about the location be downloaded, retrieves query results including the downloaded new information responsive to the user provided queries from specifically queried web sources, generates a new VR data set based on the downloaded new information about the location, the new VR data set defining a new VR representation of the location; and updates the VR data servers with the new VR data set by incorporating the user provided queries and the retrieved query results, wherein the user provided queries and the retrieved query results are formatted to be compatible with the new VR data set; and a processor that executes instructions stored in memory, wherein execution of the instructions by the processor generates the new VR representation within the virtual universe, the generated new VR representation inclusive of the respective query results associated with the new VR data set without a user leaving the virtual universe.
 16. The viewing system of claim 15, wherein the display further displays the generated new VR representation.
 17. The viewing system of claim 16, wherein the display displays both the map and the new VR representation simultaneously.
 18. The viewing system of claim 16, wherein the display further displays widgets that navigates to different real-world locations in the virtual universe, and wherein at least one of the widgets allows access to the information associated with the query responses from the specifically queried web sources.
 19. The viewing system of claim 16, wherein the display further displays widgets for navigation directly to the specifically queried web sources, and wherein a geo-location of the selected real-world location was automatically added to an automatic query of the web sources.
 20. A non-transitory computer-readable storage medium having embodied thereon a program executable by a processor to perform a method for accessing virtual reality (VR) representations, the method comprising: storing a plurality of VR data sets in one or more VR data servers, each VR data set defining a VR representation of a real-world location; receiving user provided queries about a VR representation of a location, wherein the user provided queries request that new information about the location be downloaded, retrieving query results including the downloaded new information responsive to the user provided queries from specifically queried web sources, generating a new VR data set based on the downloaded new information about the location, the new VR data set defining a new VR representation of the location; updating the VR data servers with the new VR data set by incorporating the user provided queries and the retrieved query results, wherein the user provided queries and the retrieved query results are formatted to be compatible with the new VR data set; receiving a selection from a visitor device accessing a domain data in response to the received selection to obtain a network address of one of the VR data servers that stores the new VR data set corresponding to the location and that includes the user provided queries and the retrieved query results; and transmitting the new VR data set including the user provided queries and the retrieved query results from the VR data server at the network address to the visitor device, wherein the visitor device generates the new VR representation within a virtual universe, the generated new VR representation inclusive of the retrieved query results associated with the new VR data set without a user leaving the virtual universe. 